Skip to content

Commit de00794

Browse files
also support older goto links
1 parent 524b5f3 commit de00794

File tree

1 file changed

+104
-0
lines changed

1 file changed

+104
-0
lines changed

content/ai_exchange/firebase.json

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,23 @@
1616
"value": "no-store, no-cache, max-age=0, must-revalidate"
1717
}
1818
]
19+
},
20+
{
21+
"source": "/goto/**",
22+
"headers": [
23+
{
24+
"key": "Cache-Control",
25+
"value": "no-store, no-cache, max-age=0, must-revalidate"
26+
}
27+
]
1928
}
2029
],
2130
"redirects": [
31+
{
32+
"source": "/goto/media/",
33+
"destination": "/media",
34+
"type": 302
35+
},
2236
{
2337
"source": "/go/media/",
2438
"destination": "/media",
@@ -29,6 +43,11 @@
2943
"destination": "/docs/ai_security_overview/#table-of-contents",
3044
"type": 302
3145
},
46+
{
47+
"source": "/goto/summary/",
48+
"destination": "/docs/ai_security_overview/#how-to-organize-ai-security",
49+
"type": 302
50+
},
3251
{
3352
"source": "/go/summary/",
3453
"destination": "/docs/ai_security_overview/#how-to-organize-ai-security",
@@ -44,21 +63,41 @@
4463
"destination": "/docs/ai_security_overview/#how-to-organize-ai-security",
4564
"type": 302
4665
},
66+
{
67+
"source": "/goto/essentials/",
68+
"destination": "/docs/ai_security_overview/#ai-security-essentials",
69+
"type": 302
70+
},
4771
{
4872
"source": "/go/essentials/",
4973
"destination": "/docs/ai_security_overview/#ai-security-essentials",
5074
"type": 302
5175
},
76+
{
77+
"source": "/goto/threatsoverview/",
78+
"destination": "/docs/ai_security_overview/#threats-overview",
79+
"type": 302
80+
},
5281
{
5382
"source": "/go/threatsoverview/",
5483
"destination": "/docs/ai_security_overview/#threats-overview",
5584
"type": 302
5685
},
86+
{
87+
"source": "/goto/agenticaithreats/",
88+
"destination": "/docs/ai_security_overview/#threats-to-agentic-ai",
89+
"type": 302
90+
},
5791
{
5892
"source": "/go/agenticaithreats/",
5993
"destination": "/docs/ai_security_overview/#threats-to-agentic-ai",
6094
"type": 302
6195
},
96+
{
97+
"source": "/goto/aisecuritymatrix/",
98+
"destination": "/docs/ai_security_overview/#ai-security-matrix",
99+
"type": 302
100+
},
62101
{
63102
"source": "/go/aisecuritymatrix/",
64103
"destination": "/docs/ai_security_overview/#ai-security-matrix",
@@ -69,6 +108,11 @@
69108
"destination": "/docs/ai_security_overview/#ai-security-matrix",
70109
"type": 302
71110
},
111+
{
112+
"source": "/goto/controlsoverview/",
113+
"destination": "/docs/ai_security_overview/#controls-overview",
114+
"type": 302
115+
},
72116
{
73117
"source": "/go/controlsoverview/",
74118
"destination": "/docs/ai_security_overview/#controls-overview",
@@ -79,31 +123,61 @@
79123
"destination": "/docs/ai_security_overview/#threat-model-with-controls---ready-made-model",
80124
"type": 302
81125
},
126+
{
127+
"source": "/goto/periodictable/",
128+
"destination": "/docs/ai_security_overview/#periodic-table-of-ai-security",
129+
"type": 302
130+
},
82131
{
83132
"source": "/go/periodictable/",
84133
"destination": "/docs/ai_security_overview/#periodic-table-of-ai-security",
85134
"type": 302
86135
},
136+
{
137+
"source": "/goto/navigator/",
138+
"destination": "/docs/ai_security_overview/#structure-of-threats-and-controls-in-the-deep-dive-section",
139+
"type": 302
140+
},
87141
{
88142
"source": "/go/navigator/",
89143
"destination": "/docs/ai_security_overview/#structure-of-threats-and-controls-in-the-deep-dive-section",
90144
"type": 302
91145
},
146+
{
147+
"source": "/goto/about/",
148+
"destination": "/docs/ai_security_overview/#about-the-ai-exchange",
149+
"type": 302
150+
},
92151
{
93152
"source": "/go/about/",
94153
"destination": "/docs/ai_security_overview/#about-the-ai-exchange",
95154
"type": 302
96155
},
156+
{
157+
"source": "/goto/aiatowasp/",
158+
"destination": "/docs/ai_security_overview/#relevant-owasp-ai-initiatives",
159+
"type": 302
160+
},
97161
{
98162
"source": "/go/aiatowasp/",
99163
"destination": "/docs/ai_security_overview/#relevant-owasp-ai-initiatives",
100164
"type": 302
101165
},
166+
{
167+
"source": "/goto/document/",
168+
"destination": "/docs/ai_security_overview/#how-to-use-this-document",
169+
"type": 302
170+
},
102171
{
103172
"source": "/go/document/",
104173
"destination": "/docs/ai_security_overview/#how-to-use-this-document",
105174
"type": 302
106175
},
176+
{
177+
"source": "/goto/riskanalysis/",
178+
"destination": "/docs/ai_security_overview/#how-to-select-relevant-threats-and-controls-risk-analysis",
179+
"type": 302
180+
},
107181
{
108182
"source": "/go/riskanalysis/",
109183
"destination": "/docs/ai_security_overview/#how-to-select-relevant-threats-and-controls-risk-analysis",
@@ -129,6 +203,11 @@
129203
"destination": "/docs/ai_security_overview/#how-about-copyright",
130204
"type": 302
131205
},
206+
{
207+
"source": "/goto/references/",
208+
"destination": "/docs/ai_security_references/",
209+
"type": 302
210+
},
132211
{
133212
"source": "/go/references/",
134213
"destination": "/docs/ai_security_references/",
@@ -214,11 +293,21 @@
214293
"destination": "/docs/1_general_controls/#13-controls-to-limit-the-effects-of-unwanted-behaviour",
215294
"type": 302
216295
},
296+
{
297+
"source": "/goto/oversight/",
298+
"destination": "/docs/1_general_controls/#oversight",
299+
"type": 302
300+
},
217301
{
218302
"source": "/go/oversight/",
219303
"destination": "/docs/1_general_controls/#oversight",
220304
"type": 302
221305
},
306+
{
307+
"source": "/goto/leastmodelprivilege/",
308+
"destination": "/docs/1_general_controls/#least-model-privilege",
309+
"type": 302
310+
},
222311
{
223312
"source": "/go/leastmodelprivilege/",
224313
"destination": "/docs/1_general_controls/#least-model-privilege",
@@ -364,6 +453,11 @@
364453
"destination": "/docs/2_threats_through_use/#221-direct-prompt-injection",
365454
"type": 302
366455
},
456+
{
457+
"source": "/goto/promptinjectionsevenlayers/",
458+
"destination": "/docs/2_threats_through_use/#seven-layers-of-prompt-injection-protection",
459+
"type": 302
460+
},
367461
{
368462
"source": "/go/promptinjectionsevenlayers/",
369463
"destination": "/docs/2_threats_through_use/#seven-layers-of-prompt-injection-protection",
@@ -379,6 +473,11 @@
379473
"destination": "/docs/2_threats_through_use/#prompt-injection-io-handling",
380474
"type": 302
381475
},
476+
{
477+
"source": "/goto/promptinjectioniohandling/",
478+
"destination": "/docs/2_threats_through_use/#prompt-injection-io-handling",
479+
"type": 302
480+
},
382481
{
383482
"source": "/go/promptinjectioniohandling/",
384483
"destination": "/docs/2_threats_through_use/#prompt-injection-io-handling",
@@ -654,6 +753,11 @@
654753
"destination": "/docs/4_runtime_application_security_threats/#encode-model-output",
655754
"type": 302
656755
},
756+
{
757+
"source": "/goto/leakinput/",
758+
"destination": "/docs/4_runtime_application_security_threats/#45-input-data-leak",
759+
"type": 302
760+
},
657761
{
658762
"source": "/go/leakinput/",
659763
"destination": "/docs/4_runtime_application_security_threats/#45-input-data-leak",

0 commit comments

Comments
 (0)